package cronx

import (
	"context"

	"github.com/robfig/cron/v3"
)

type CronServer struct {
	cron *CronService
}

func NewCronServer() *CronServer {
	return &CronServer{
		cron: NewCronService(cron.WithSeconds()),
	}
}

func (s *CronServer) AddJob(job CronJob) error {
	return s.cron.AddJob(job)
}

func (c *CronServer) Start(context.Context) error {
	c.cron.Start()
	return nil
}

func (c *CronServer) Stop(context.Context) error {
	c.cron.Stop()
	return nil
}
